Aspects of the present invention relate to networking. Other aspects of the present invention relate to packet based networking.
In packet based networking, information is sent from a source network end point to a destination network end point in the form of packets. Different packets corresponding to a same piece of information (e.g., an electronic mail) from a source network end point may reach a same destination network end point via different network paths and individual packets may take a varying amount of time to travel between the source and the destination. For instance, two packets may be sent from a source separated by 3.5 milliseconds and may arrive at a destination separated by 9 milliseconds. Various factors in networks may affect packet-traveling time. For example, temporary network congestion may lead to delay.
The variance in packet latencies is called jitter. The jitter along a network path may have a significant impact on how the network path should be utilized and by what types of applications. For example, a network path with an excessive amount of jitter is not suitable for real-time applications such as Voice over Internet Protocol (VoIP). A reliable method to estimate jitter can be useful for optimizing the performance of different network applications and for network management.
A typical method to measure jitter is shown in FIG. 1, in which an initiating (source) network end point 110 sends a plurality of source packets 115 to a receiving (destination) network end point 130. Using this method, each individual source packet at the source network end point 110 is marked with a sequence number and a departure time stamp. The corresponding sequence number and arrival time of such packets are recorded at the destination. The latency of each packet can them be computed by subtracting the departure time stamp of the packet from the corresponding arrival time stamp. Jitter can then be calculated based on the variance among all the latencies between adjacent packets. For example, a mean and a standard deviation of a series of latency differences may be computed as a measure of jitter.
Measuring jitter according to such method consumes resources at both the source and the destination network end points. For example, each packet needs to be marked with a sequence number and time stamped prior to being sent out. At the destination, each arriving packet has to be examined for its sequence number and the corresponding arrival time stamp needs to be recorded for subtraction purposes.